// 可迭代性
// 当一个对象实现了可迭代性的功能, 

// for..of 语句 vs for..in
// let someArray = [1, "string", false];

// for (let entry of someArray) {
//     console.log(entry); // 1, "string", false
// }

// let list = [4, 5, 6];
// for (let i in list) {
//     console.log(i); // "0", "1", "2",
// }
// for (let i of list) {
//     console.log(i); // "4", "5", "6"
// }



let pets = new Set(["Cat", "Dog", "Hamster"]);
pets["species"] = "mammals";

for (let pet in pets) {
    console.log(pet); // "species"
}

for (let pet of pets) {
    console.log(pet); // "Cat", "Dog", "Hamster"
}

// 当生成目标为ES5或ES3，迭代器只允许在Array类型上使用
